//关键字
//下表列出了 C 中的保留字。这些保留字不能作为常量名、变量名或其他标识符名称。
//
//关键字	说明
//auto	声明自动变量
//break	跳出当前循环
//case	开关语句分支
//char	声明字符型变量或函数返回值类型
//const	定义常量，如果一个变量被 const 修饰，那么它的值就不能再被改变
//continue	结束当前循环，开始下一轮循环
//default	开关语句中的"其它"分支
//do	循环语句的循环体
//double	声明双精度浮点型变量或函数返回值类型
//else	条件语句否定分支（与 if 连用）
//enum	声明枚举类型
//extern	声明变量或函数是在其它文件或本文件的其他位置定义
//float	声明浮点型变量或函数返回值类型
//for	一种循环语句
//goto	无条件跳转语句
//if	条件语句
//int	声明整型变量或函数
//long	声明长整型变量或函数返回值类型
//register	声明寄存器变量
//return	子程序返回语句（可以带参数，也可不带参数）
//short	声明短整型变量或函数
//signed	声明有符号类型变量或函数
//sizeof	计算数据类型或变量长度（即所占字节数）
//static	声明静态变量
//struct	声明结构体类型
//switch	用于开关语句
//typedef	用以给数据类型取别名
//unsigned	声明无符号类型变量或函数
//union	声明共用体类型
//void	声明函数无返回值或无参数，声明无类型指针
//volatile	说明变量在程序执行中可被隐含地改变
//while	循环语句的循环条件
//C99 新增关键字
//_Bool	_Complex	_Imaginary	inline	restrict
//C11 新增关键字
//_Alignas	_Alignof	_Atomic	_Generic	_Noreturn
//_Static_assert	_Thread_local	 	 	 
//
//C 中的空格
//只包含空格的行，被称为空白行，可能带有注释，C 编译器会完全忽略它。
//
//在 C 中，空格用于描述空白符、制表符、换行符和注释。空格分隔语句的各个部分，让编译器能识别语句中的某个元素（比如 int）在哪里结束，下一个元素在哪里开始。因此，在下面的语句中：
//
//int age;
//在这里，int 和 age 之间必须至少有一个空格字符（通常是一个空白符），这样编译器才能够区分它们。另一方面，在下面的语句中：
//
//fruit = apples + oranges;   // 获取水果的总数
//fruit 和 =，或者 = 和 apples 之间的空格字符不是必需的，但是为了增强可读性，您可以根据需要适当增加一些空格。